/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package vecteurtrie;

import java.util.Vector;

/**
 *
 * @author pfares
 */
public abstract class VecteurTrie {
    private Vector vecteur = new Vector(100);

    // si o1 > o2 alors plusGrand renvoie true false sinon
    abstract boolean plusGrand(Object o1, Object o2);

    void inserer(Object element) {
        int i = vecteur.size()-1;
        

        //recherche de la position de l'element
        while ((i>=0) && (plusGrand(vecteur.elementAt(i),element))) {
            //table[i+1]=table[i];
            //vecteur.setElementAt(vecteur.elementAt(i),i+1);
            i--;
        }
        //A la sortie la valeur de i indique la position precedente de la ou
        //l'element devrais etre place ou -1
        System.out.println(i);
        //Inserer l'element a sa bonne position
        vecteur.add(i+1,element);
        
    }
    void supprimmer(Object element) {
        vecteur.removeElement(element);
    }

    public String toString() {
        String res="{";
        for (Object o: vecteur) res += o + " ";
        res +="}";
        return res;
    }
}
